package org.example;

import java.util.Arrays;

public class Lambda_Demo6 {
    public static void main(String[] args) {
        //lambda 标准模式
       /* method(new Swim(){
            @Override
            public void swimming() {
                System.out.println("swimming");
            }
        });*/
        //lambda表达式的省略模式
        //  method( ()-> System.out.println("正在游泳"));
        //lambda表达式的简单模式
        method(
                ()-> System.out.println("正在游泳")
        );



        String[]Arr={"a","aa","aaa","aaaa"};
        //lambda 简单模式
        Arrays.sort(Arr,(String o1,String o2)->{
            return o1.length()-o2.length();
        });
        System.out.println(Arrays.toString(Arr)+"1");
        //lambda 省略模式
        Arrays.sort(Arr,(String o1,String o2)-> o1.length()-o2.length());
        System.out.println(Arrays.toString(Arr)+"2");
        //lambda 省略模式2 小括号里的数据类型可以省略
        Arrays.sort(Arr,(o1,o2)-> o1.length()-o2.length());
        System.out.println(Arrays.toString(Arr)+"3");

    }
    public static void method(Swim s){
        s.swimming();
    }
}
interface Swim{
    void swimming();
}
